The invention concerns a method for convolutive encoding and transmission by packets of a digital data series, the method and the corresponding decoding device.
The technical area relating to the transmission of digital data, particularly by a radio or satellite channel has seen its importance take a growing significance, in the last decade.
A basic constraint is the conservation of the integrity of this data and finally of the intelligibility of the information carried during the transmission of this data. Indeed, in the case where physical disturbances, (in particular of a radio-electric nature), occur, the transmitted message is corrupted and may become unusable.
In order to protect against such risks, numerous applications using a digital data transmission method, audio and/or video transmission by terrestrial or satellite broadcasting, it is prudent to call for encoding processes of transmitted data, and in particular of convolutive encoding.
The convolutive encoding process represents a high performance error correcting encoding process class, which can be applied to operations of data series transmission, in a transmission channel disrupted by a Gaussian type of noise, such as the transmission channel by radio connection between a terrestrial station and a satellite station.
Generally speaking, to encode a message with a convolutional type of encoding, not only the current data present at the instant t at input to the encoder, current bit of rank k, is used, but also the n data values or bits of the previous rank. A memory effect of order n to encode this data is thus introduced. In referring to such a principle, it appears that every transmitted message takes account of the previous content of the message. The previous content of the message at the instant t is memorised in a memory updated with each current bit. The size of this memory is defined by the length of the previous content, which is called constraint length of the code used and designated by K, with K=n+1.
Referring to FIG. 1, relative to a known convolutive encoding device of the prior art, a memory formed for example by a shift register provided with elementary cells enabling n successive bits to be memorised, the bit previous to the current bit i(Dxe2x88x921) up to the bit i(Dxe2x88x92n), then enables a logic processing, by an exclusive OR type of logic operator for example, of the current bit i(D) by several previous bits of a specified rank. In the usual way and in order to reinforce protection against errors, it is appropriate to generate two or more encoded values a(D) and b(D), correlated by two distinct constraints. Each encoded value associated with a(D);b(D) thus constitutes a representative symbol S(D)={a(D);b(D)} of the current data i(D). In the example of FIG. 1 given as a non-restrictive example, the depth of encoding is K=7. The successive encoded values a(D) and b(D) are given by the relations:
a(D)=i(D)g1(D) with g1=171 oct
b(D)=i(D)g2(D) with g2=133 oct
The notation oct designating the octal notation.
Thus the aforementioned convolutive encoding and the corresponding error correcting codes can be used by means of simple structure circuits.
The decoding process of such codes, and consequently the transmission error correction, necessitate on the other hand the use of much more complex functions.
In particular, in the case of convolutive encoding, the optimum decoding of a code obtained in this way can be obtained by means of the use of a decoding process according to the VITERBI algorithm. The principle of the aforementioned algorithm is based on the fact that the encoder corresponds in fact to a state machine or robot of simple structure or having at least a limited number of states.
According to the aforementioned principle, the receiver-decoder searches for an estimation at each instant of the state of the encoder, to determine the transmitted sequence during the reception of all new data, i.e. of the current bit of successive rank.
A universal decoding process of such a code then consists of comparing the received sequence, at the current instant, with all the possible sequences which can be transmitted and to choose, from amongst these, that which presents a maximum probability.
In order to do this, the most probable a posteriori coded sequence is then determined by determining the smallest distance value between the received sequence and the possible coded sequences, the notion of distance value being defined according to the notion of Hamming distance.
A lattice diagram enables the developments of the state of the encoder to be displayed as a function of time, for the value of the data of input bit of rank k, each lattice node representing a possible state of the encoder and of the encoded value. For each new value received, the Hamming distance is then calculated at each point of the lattice. This distance is accumulated with the calculated value at this same point during the evaluation of the previous value. To determine the most probable sequence then consists in returning to the lattice diagram and looking for the decoded values which correspond globally to the smallest accumulated Hamming distance.
For a more complete description of the VITERBI algorithm, reference is made to the article entitled The Viterbi Algorithm published by G. David FORNEY, Jr., Proceedings of the IEEE vol.61, No. 3, March 1973, pp. 268 to 278.
The search process of the decoded values which correspond globally to the smallest Hamming distance, by bringing into the diagram a data and sequence value with the following data and sequence value, necessarily involves a decoding and by corollary a highly continuous encoding process. In other words, if it is desired to process a decoding of a sequence generated by means of a convolutive encoding, it is in no way conceivable then to interrupt the recovery of the encoding or decoding. Such an interruption, introducing discontinuities in the lattice diagram, would then have the effect, because of such a discontinuity, of destroying any chance of finding the path for which the Hamming distance is minimal and consequently the most probable sequence.
The object of the present invention is to find a solution to the disadvantages of the prior art encoding/decoding processes by implementing a method convolutive encoding and transmission by packets of a digital data series flow and a method for decoding of a digital data series flow encoded by convolutive encoding and transmitted by packets according to this convolutive encoding method, in the absence of any degradation of corrective power inherent in the decoding process by means of a VITERBI algorithm, which is reserved for the decoding of continuous data flow encoded by convolutive encoding.
Another object of the present invention is to implement a method for a convolutive encoding and transmission by packets of a digital data series flow coming from separate encoders, this digital data being therefore a priori uncorrelated, and a corresponding method for decoding enabling the corrective power inherent in the convolutive encoding and decoding process according to a VITERBI algorithm to be conserved, although it is reserved to the decoding of continuous data flow encoded by a convolutive encoding.
Another object of the present invention is finally to implement a decoding device for a digital data series flow encoded by convolutive encoding and transmitted by packets, according to the method for decoding which is the object of the present invention.
The method for convolutive encoding and transmission by packets of a digital data series flow, a succession of q bits i(k) of specified value, by means of a convolutive encoding of depth K, which is the object of the present invention, is noteworthy in that it consists at least of discriminating in the series flow a set of n=Kxe2x88x921 successive bits, n less than q, to form a current word of n bits, in defining for the convolutive encoding process a stable starting binary value, subjecting the current word of n bits to a convolutive encoding process of depth K, at each bit value i(k) corresponding to a first a(k) and a second b(k) encoded value, the set of these first and second encoded values constituting an encoded symbol S(k)={a(k), b(k)} representative of the considered bit i(k), forming from the q encoded symbols a packet of encoded symbols by concatenation of these encoded symbols, assigning the convolutive encoding process the aforementioned stable value as the constraint value at the end of the packet, generating at least one encapsulation message of the packet of encoded symbols and transmitting, in the same message, the aforesaid encapsulation message and the aforesaid packet of encoded symbols for decoding and use, then to repeat the previous operations for each current packet of the flow of bits.
The method, which is the object of the present invention, for decoding a digital data series flow transmitted by packets in accordance with the encoding process according to the invention thus consists of at least, during reception of the encapsulation message and of the packet of encoded symbols, in discriminating the encapsulation message in order to generate an envelope logic signal having a first binary value prior to the start and after the end of the packet of encoded symbols and a second binary value during the reception of the encoded symbols, submitting the envelope logic signal and the encoded symbols to a logic process enabling to generate pause symbols of specified value and successive rank for the first binary value of the envelope logic signal, and successive validated encoded symbols, Sxe2x80x2(k)={axe2x80x2(k);bxe2x80x2(k)} of successive rank k corresponding to the encoded symbols S(k) for the second binary value of the envelope logic signal, to submit the pause symbols and the validated encoded symbols of successive rank to a continuous VITERBI type decoding, the aforesaid pause symbols enabling the continuity of the decoding lattice to be obtained by imposing a stable state between two packets of successive encoded symbols.
The decoding device for a digital data series flow encoded by convolutive encoding and transmitted by packets, representative of this encoded digital data, which is the object of the present invention, each representative packet of the digital encoded data comprising a current packet of successive encoded symbols associated with at least one encapsulation message adapted to signalize the transmission of this current packet, is noteworthy in that it comprises at least one discrimination module of the aforesaid encapsulation message enabling an envelope logic signal of the current packet to be generated, having a first and a second logic value, a logic processing module of the envelope logic signal and of the encoded symbols representative of this data, the aforesaid logic processing module enabling a continuous flow of digital data constituted by the aforesaid packet of successive encoded symbols to be generated, a VITERBI decoding module receiving the continuous flow of digital data, the aforesaid decoding module being updated to the pause state from the envelope logic signal for each current packet.